package br.com.delogic.simuladorbancario.main.controller;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Random;

/**
 *
 * @author NB1
 */
public class Sorteador<P> {
    protected List<P> participantes;
    protected List<P> contemplados = new LinkedList<P>();
    
    public Sorteador () {
    
    }
    
    public Sorteador (List<P> participantes) {
    
    }
    
    public void setParticipantes (List<P> participantes) {
        this.participantes = participantes;
    }
    
    public List<P> sortear (int totalPremiados) {
        List<P> partTemp = participantes;
        for (int i = 0; i < totalPremiados; i++) {
            int r = new Random().nextInt(participantes.size());
            this.participantes.get(r);
            contemplados.add(partTemp.remove(r));
        }
        return contemplados;
    }
    
    public List<P> getParticipantes () {
        return this.participantes;
    }
    
    public List<P> getContemplados () {
        return this.contemplados;
    }
}
